package com.zx.notification.producer.config;

import lombok.Getter;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.cloud.context.config.annotation.RefreshScope;
import org.springframework.context.annotation.Configuration;

/**
 * RabbitMQ生产者配置类
 * 用于读取和管理RabbitMQ生产者相关的配置参数
 */
@RefreshScope // 支持Nacos的动态刷新功能
@Configuration
@Getter
public class RabbitMqProducerConfig {
    /**
     * rabbitmq是否启用，控制是否启用rabbitmq消息队列功能
     */
    @Value("${spring.rabbitmq.enabled:true}")
    private boolean rabbitmqEnabled;

    /**
     * RabbitMQ服务器地址，用于连接RabbitMQ服务
     */
    @Value("${spring.rabbitmq.host}")
    private String host;

    /**
     * RabbitMQ端口号，指定连接RabbitMQ服务的端口
     */
    @Value("${spring.rabbitmq.port}")
    private int port;

    /**
     * RabbitMQ用户名，用于认证连接到RabbitMQ服务
     */
    @Value("${spring.rabbitmq.username}")
    private String username;

    /**
     * RabbitMQ密码，用于认证连接到RabbitMQ服务
     */
    @Value("${spring.rabbitmq.password}")
    private String password;


}